草庐IT

java - Java Appengine 中的 JODA 时间

全部标签

ruby - 如何从 Ruby 中的较大字符串中提取单个字符(作为字符串)?

从字符串中检索单个字符作为单字符字符串的Ruby惯用方法是什么?当然有str[n]方法,但是(从Ruby1.8开始)它返回一个字符代码作为fixnum,而不是字符串。你如何获得单字符字符串? 最佳答案 在Ruby1.9中,这很容易。在Ruby1.9中,字符串是可识别编码的字符序列,因此您只需对其进行索引即可从中获取单字符字符串:'µsec'[0]=>'µ'然而,在Ruby1.8中,字符串是字节序列,因此完全不知道编码。如果您对一个字符串进行索引并且该字符串使用多字节编码,则可能会索引到多字节字符的中间(在此示例中,'µ'以UTF-8

ruby-on-rails - 如何在 Ruby 中的 YAML 文件中包含 YAML 文件

在YAML中是否有自定义标签用于ruby​​将YAML文件包含在YAML文件中?#E.g.:---!includefilename:another.ymlAsimilar前段时间有人问过这个问题,没有相关的答案。我想知道是否有一些类似于this的Ruby自定义标签一个用于Python。 最佳答案 如果您使用Rails,YAML可以包含ERB。将它们结合在一起,这就是您可以使用的方法包含一个文件中的另一个文件:数据库.ymldatabase.sqlite.ymlsqlite:&defaultsadapter:sqlite3pool:5

ruby-on-rails - 在日志消息之前添加当前时间

我为我的应用程序创建了一个自定义记录器,称为CRON_LOG,只需将这段代码添加到config/environment.rbCRON_LOG=Logger.new("#{Rails.root}/log/cron.log")CRON_LOG.level=Logger::INFO然后,当我想记录一些东西时,就这样做:CRON_LOG.info"something"它工作正常,但我想在每条日志消息之前添加当前时间戳。当然,我可以将Time.now添加到我的日志消息中,但我想知道是否有一种方法可以将它作为默认值添加到每条日志消息中。我该怎么做?谢谢。 最佳答案

ruby - 与原子分组混淆 - 它与 Ruby 正则表达式中的分组有何不同?

我已经浏览了AtomicGrouping的文档和rubyinfo我想到了一些问题:为什么叫“原子分组”?它有什么“原子性”而一般分组没有?原子分组与一般分组有何不同?为什么原子组被称为非捕获组?我尝试了下面的代码来理解,但对输出以及它们在同一字符串上的工作方式有何不同感到困惑?irb(main):001:0>/a(?>bc|b)c/=~"abbcdabcc"=>5irb(main):004:0>$~=>#irb(main):005:0>/a(bc|b)c/=~"abcdabcc"=>0irb(main):006:0>$~=># 最佳答案

ruby-on-rails - 你如何从日期时间中减去?

我想写一个简单的函数来表示几个小时:创建后经过了多长时间?我的尝试:-time=DateTime.now.hour-(self.created_at.hour)有人知道如何在RubyonRails中执行此操作吗? 最佳答案 Rails通常使用Time,而不是DateTime。你为什么不做Time.now-self.created_at?然后您可以通过除以3600从秒转换为小时。 关于ruby-on-rails-你如何从日期时间中减去?,我们在StackOverflow上找到一个类似的问题

arrays - Ruby 数组中的 `return`#map

我有一个方法可以决定在map函数中返回什么。我知道这可以通过分配一个变量来完成,但这就是我认为我可以做到的方式;defsome_method(array)array.mapdo|x|ifx>10returnx+1#orwhateverelsereturnx-1endendend这并不像我预期的那样工作,因为第一次return被命中时,它从方法返回,而不是在map函数中,类似于return在javascript的map函数中的使用方式。有没有办法实现我想要的语法?还是我需要将其分配给一个变量,然后像这样将其卡在末尾:defsome_method(array)array.mapdo|x|r

ruby - 将 unicode 代码点转换为 Ruby 中的字符串字符

我有来自unicode数据库的这些值,但我不确定如何将它们转换为人类可读的形式。这些到底叫什么?他们在这里:U+2B71FU+2A52DU+2A68FU+2A690U+2B72FU+2B4F7U+2B72B如何将这些转换为可读的符号? 最佳答案 怎么样:#Usingpackputs["2B71F".hex].pack("U")#Usingchrputs(0x2B71F).chr(Encoding::UTF_8)在Ruby1.9+中你还可以:puts"\u{2B71F}"即\u{}转义序列可用于解码Unicode代码点。

ruby - 是否可以递归地要求 Ruby 中目录中的所有文件?

我正在开发一个API,它需要加载当前目录和所有子目录中的所有.rb文件。目前,我正在为我添加的每个文件输入一个新的require语句,但我想把它放在我只需要将文件放在一个子目录中并自动添加它的地方。是否有执行此操作的标准命令? 最佳答案 在这种情况下,它会加载lib目录下的所有文件:Dir["#{File.dirname(__FILE__)}/lib/**/*.rb"].each{|f|load(f)} 关于ruby-是否可以递归地要求Ruby中目录中的所有文件?,我们在StackOve

Ruby:将时间转换为秒?

如何将10:30之类的时间转换为秒?是否有某种内置的Ruby函数来处理这个问题?基本上是试图计算出从午夜(00:00)到一天中特定时间(例如10:30或18:45)的秒数。 最佳答案 您可以使用DateTime#parse将字符串转换为DateTime对象,然后将小时乘以3600,将分钟乘以60以获得秒数:require'date'#DateTime.parsethrowsArgumentErrorifitcan'tparsethestringifdt=DateTime.parse("10:30")rescuefalsesecond

ruby-on-rails - Ruby on Rails 中的面包屑导航

我对我的面包屑解决方案有点不自信。名称和链接在每个Controller操作中定义:Home>">>">这样我可以使用:@l1_link=user_path()问题:因为我没那么聪明-这种系统会在未来的某个地方导致灾难吗?这(严重)效率低下吗? 最佳答案 面包屑菜单是大多数Rails应用程序中经常出现的模式。为了解决这个问题,我创建并发布了一个名为breadcrumbs_on_rails的插件。.您在Controller中定义面包屑classMyControlleradd_breadcrumb"home",root_pathadd_b